Feature/intellij editors#2475
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Tip 💬 Introducing Slack Agent: Turn conversations into code.Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.
Built for teams:
One agent for your entire SDLC. Right inside Slack. 👉 Get your free trial and get 200 agent minutes per Slack user (a $50 value). Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
ApprovabilityVerdict: Approved Adds 11 JetBrains IDE options to the existing editor picker by extending arrays and adding SVG icon components. Changes follow established patterns, are well-tested, and don't introduce new workflows or capabilities beyond the existing editor selection feature. You can customize Macroscope's approvability policy. Learn more. |
6da216c to
361299e
Compare
361299e to
d1adf2b
Compare
Dismissing prior approval to re-evaluate d1adf2b
Dismissing prior approval to re-evaluate 8463a85
8463a85 to
a2e9b45
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit a2e9b45. Configure here.
| function normalizeMarkdownLinkHrefKey(href: string): string { | ||
| return rewriteMarkdownFileUriHref(href.trim()) ?? href.trim(); | ||
| const normalizedHref = normalizeMarkdownLinkDestination(href); | ||
| return rewriteMarkdownFileUriHref(normalizedHref) ?? normalizedHref; |
There was a problem hiding this comment.
Redundant double normalization in href processing
Low Severity
normalizeMarkdownLinkHrefKey calls normalizeMarkdownLinkDestination(href) and then passes the result to rewriteMarkdownFileUriHref, which internally calls normalizeMarkdownLinkDestination again on the already-normalized value. The normalization is idempotent so this isn't a functional bug, but it's unnecessary redundant work on every link href processed during rendering.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit a2e9b45. Configure here.
Brings in: server CLI submodule split (pingdotgg#2545), process/trace diagnostics views (pingdotgg#2532), JetBrains editor support (pingdotgg#2475), MessagesTimeline render optimizations (pingdotgg#2527, pingdotgg#2498), git/terminal test stabilization (pingdotgg#2540), keybindings settings editor (pingdotgg#2533), and provider update advisories (pingdotgg#2312). Conflict resolutions: - packages/contracts/src/settings.ts: kept aa's diffFontFamily and terminalFontFamily alongside upstream's dismissedProviderUpdateNotificationKeys. - apps/desktop/src/clientPersistence.test.ts: same shape, fixture mirrors the schema. - apps/web/src/components/settings/SettingsPanels.tsx: kept both import groups (FontPicker from aa, ProviderUpdateLaunchNotification.logic from upstream). - apps/web/src/localApi.test.ts: extended both fixtures with diffFontFamily and terminalFontFamily so the merged ClientSettings shape typechecks against the strict desktop bridge contract. Pre-existing aa typecheck issues fixed at the root so the merge commit is green: - apps/desktop/src/electron.d.ts: declaration-merge "local-fonts" into Electron's Session.setPermissionRequestHandler permission union (the Electron 40 typings omit it even though the runtime supports it). - apps/web/src/components/DiffPanel.tsx: conditionally spread style on Virtualizer instead of passing undefined, satisfying exactOptionalPropertyTypes.


What Changed
Why
UI Changes
editor selector

file outside of the project

external link renders as expected

before and after for file links
Checklist
Note
Medium Risk
Moderate risk due to new editor IDs affecting editor selection/launch behavior and a behavioral change in how chat file links encode line/column positions, which could impact existing links or integrations.
Overview
Editor support expanded: adds 11 JetBrains IDEs (
aqua,clion,datagrip,dataspell,goland,phpstorm,pycharm,rider,rubymine,rustrover,webstorm) to the shared editor contract and wires them into the web editor picker with new SVG icons; server-side tests are extended to validate launch args and Windows editor discovery.Markdown file-link handling tightened: normalizes markdown link destinations (trims and unwraps
<...>), fixes Windows drive-path normalization (e.g./C:/...), and updates chat rendering/tests so file links use colon-style positions (path:line[:col]) instead of hash anchors (#LxCy) when opening in editors.Reviewed by Cursor Bugbot for commit a2e9b45. Bugbot is set up for automated code reviews on this repo. Configure here.
Note
Add support for 11 additional JetBrains editors in the editor picker
editor.ts, each usingline-columnlaunch style.JetBrainsIcons.tsxmodule and wires them into theOpenInPicker.markdown-links.ts: angle-bracketed hrefs are now unwrapped, Windows drive paths with a leading slash are normalized, and file URI hrefs produce colon-separated line/column positions.file:1:7) instead of hash anchors (e.g.file#L1C7).Macroscope summarized a2e9b45.